package com.ruoyi.system.mapper;

import java.util.List;
import com.ruoyi.common.core.domain.SysHouse;
import com.ruoyi.common.core.domain.entity.SysDept;
import com.ruoyi.common.core.domain.entity.SysUser;
import org.apache.ibatis.annotations.Param;

/**
 * 房间表Mapper接口
 * 
 * @author ruoyi
 * @date 2021-08-16
 */
public interface SysHouseMapper 
{
    /**
     * 查询房间表
     * 
     * @param id 房间表ID
     * @return 房间表
     */
    public SysHouse selectSysHouseById(Integer id);

    /**
     * 查询房间表列表
     * 
     * @param sysHouse 房间表
     * @return 房间表集合
     */
    public List<SysHouse> selectSysHouseList(SysHouse sysHouse);

    /**
     * 新增房间表
     * 
     * @param sysHouse 房间表
     * @return 结果
     */
    public int insertSysHouse(SysHouse sysHouse);

    /**
     * 修改房间表
     * 
     * @param sysHouse 房间表
     * @return 结果
     */
    public int updateSysHouse(SysHouse sysHouse);

    /**
     * 删除房间表
     * 
     * @param id 房间表ID
     * @return 结果
     */
    public int deleteSysHouseById(Integer id);

    /**
     * 批量删除房间表
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteSysHouseByIds(Integer[] ids);

    List<SysHouse>  selectHouseByDeptIds(Long[] deptIds);

    List<SysHouse> listByUserId(@Param("userId") Long userId, @Param("communityId") Integer communityId);

    /**
     * 根据部门 Id 更新房间人数
     */
    public int updateNumByDeptId(Long deptId);

    public int batchInsert(@Param("houses") List<SysHouse> houses);

    public int checkDeptExistUser(Integer[] ids);

    public List<SysUser> selectMember(Integer deptId);
}
